﻿using SqlSugar;
using Zhp.SqlSugar.Entity;
using Zhp.Workflow.Models;

namespace Zhp.Workflow.Entity
{
    [SugarTable("WF_ApproverRecord")]
    public class WorkflowApproverRecord : RootEntity<WorkflowApproverRecord, long>
    {
        [SugarColumn(IsNullable = false, ColumnDescription = "审批者ID")]
        public long UserId { get; set; }

        [SugarColumn(IsNullable = false, ColumnDescription = "审批者名称")]
        public string UserName { get; set; }

        [SugarColumn(IsNullable = true, ColumnDescription = "审批者昵称")]
        public string NickName { get; set; }

        [SugarColumn(IsNullable = true, ColumnDescription = "标签")]
        public string Tag { get; set; }

        [SugarColumn(IsNullable = false, ColumnDescription = "流程名称")]
        public string WorkflowName { get; set; }

        [SugarColumn(IsNullable = false, ColumnDescription = "流程ID")]
        public string WorkflowId { get; set; }

        [SugarColumn(IsNullable = false, ColumnDescription = "活动ID")]
        public string ActivityId { get; set; }

        [SugarColumn(IsNullable = false, ColumnDescription = "实体类型")]
        public string ModelType { get; set; }

        [SugarColumn(IsNullable = false, ColumnDescription = "实体ID")]
        public string ModelID { get; set; }

        [SugarColumn(IsNullable = false, ColumnDescription = "提交者")]
        public string Submitter { get; set; }

        [SugarColumn(IsNullable = false, ColumnDescription = "审批时间")]
        public DateTime ApproveTime { get; set; }

        [SugarColumn(IsNullable = false, ColumnDescription = "审批动作")]
        public ApproveActionEnum Action { get; set; }

        [SugarColumn(IsNullable = true, ColumnDescription = "审批备注")]
        public string Remark { get; set; }
    }
}
